package org.dromara.house.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.dromara.house.domain.bo.LeasingTrendsBo;
import org.dromara.house.domain.dto.*;

import java.util.Date;
import java.util.List;

@Mapper
public interface StatisticsMapper {


    List<DistrictOccupancyRateDto> districtOccupancyRate();

    List<HousingOccupancyRateDto> housingOccupancyRate();

    Double queryTotalArea(@Param("bo") LeasingTrendsBo bo);

    LeasingTrendsDto queryLeasingTrendsDto(@Param("bo") LeasingTrendsBo bo,@Param("month") String month);

    Double queryLeaseArea(@Param("bo") LeasingTrendsBo bo);

    Double selectExpiringSoon(@Param("startDate") Date startDate, @Param("endDate") Date endDate,@Param("bo") LeasingTrendsBo bo);

    List<ExpiringSoonEnterpriseDto> selectExpiringSoonEnterprise(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("bo") LeasingTrendsBo bo);

    Integer selectListParkTenantNum(@Param("bo") LeasingTrendsBo bo);

    Page<ParkHousingDto> selectPageList(@Param("bo") LeasingTrendsBo bo,@Param("page") Page<Object> page);
}
